Current multi-core processors contain multiple compute cores which are connected to an on-die shared cache through a caching bridge. Multi-processor systems which are constructed with multi-core processors maybe referred to as multi-core multiprocessor (MCMP) systems. MCMP systems are becoming increasingly popular in commercial server systems because of their improved scalability and modular design. In a multi-core processor a caching bridge enforces the caching policy for the shared cache. The on-die shared cache may also be referred to as the last level cache (LLC). The caching policy employed in the LLC has a direct effect on the overall performance and design complexity of the MCMP system.
Current designs have a caching policy that is decided statically at the time of design and is optimized for a specific workload. Most often these policies create designs which use the last level caches inefficiently, which results in data replication and thus affects the overall performance of the system. Therefore a need exists for a caching policy which enables use of the last level cache efficiently and results in improved performance of the MCMP system.